using System;
using System.Collections.Generic;
using System.Runtime.Serialization;

namespace StarfleetCommanderDomain
{
    public interface IEspionageReport
    {

        [DataMember()]
        global::System.Int32 ErId { get; set; }

        [DataMemberAttribute()]
        Nullable<global::System.Int32> EspionageId { get; set; }

        [DataMemberAttribute()]
        global::System.Int32 PlayerId { get; set; }

        [DataMemberAttribute()]
        global::System.Int32 PositionId { get; set; }

        [DataMemberAttribute()]
        global::System.Int32 Ore { get; set; }

        [DataMemberAttribute()]
        global::System.Int32 Crystal { get; set; }

        [DataMemberAttribute()]
        global::System.Int32 Hydrogen { get; set; }


        [DataMemberAttribute()]
        global::System.DateTime ApproximateTime { get; set; }


        [DataMemberAttribute()]
        Nullable<global::System.Boolean> HasShips { get; set; }


        [DataMemberAttribute()]
        Nullable<global::System.Boolean> HasDefenses { get; set; }


        [DataMemberAttribute()]
        Nullable<global::System.Byte> UniverseId { get; set; }

        IPosition Position { get;  }
        IEspionage Espionage { get; }
        IPlayerFull Player { get; }

        IEnumerable<IReportShip> ReportShips { get;  }
    }
}